/**
 * Copyright (c) Meta Platforms, Inc. and affiliates.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */

 :root {
  /*
  See css var + hsl color palette technique:
  https://blog.maximeheckel.com/posts/the-power-of-composition-with-css-variables/
   */
  --site-primary-hue-saturation: 264 75%;
  --site-primary-hue-saturation-light: 264 75%; /* do we really need this extra one? */
  --site-color-favorite-background: #f6fdfd;
  --site-color-tooltip: #fff;
  --site-color-tooltip-background: #353738;
  --site-color-svg-icon-favorite: #e9669e;
  --site-color-checkbox-checked-bg: hsl(167deg 56% 73% / 25%);
  --site-color-feedback-background: #fff;
  --docusaurus-highlighted-code-line-bg: rgb(0 0 0 / 10%);
  /* Use a darker color to ensure contrast, ideally we don't need important */
  --ifm-breadcrumb-color-active: var(--ifm-color-primary-darker) !important;
  --ifm-menu-color-active: var(--ifm-color-primary-darker) !important;
  --ifm-link-hover-decoration: none;
  --ifm-navbar-padding-horizontal: 42px;
  --ifm-navbar-padding-vertical: 22px;
  --ifm-navbar-item-padding-vertical: 0.1rem;
  --ifm-navbar-height: 5.5rem;
  --ifm-navbar-link-hover-color: #6200ea;
  --ifm-footer-link-color: #fff;
  --ifm-footer-link-hover-color: #ffffff99;
}

.navbar-sidebar {
  --ifm-navbar-padding-horizontal: 1.5rem;
  --ifm-navbar-background-color: #fff;
  --ifm-navbar-link-color: var(--ifm_menu-color);
  --ifm-navbar-link-hover-color: var(--ifm_menu-color);
}

html[data-theme='dark'] {
  --site-color-feedback-background: #f0f8ff;
  --site-color-favorite-background: #1d1e1e;
  --site-color-checkbox-checked-bg: hsl(167deg 56% 73% / 10%);
  --docusaurus-highlighted-code-line-bg: rgb(66 66 66 / 35%);
}

/*
 * This selector will be dynamically replaced by the color generator. Don't put
 * other properties here.
 */
[data-theme='light'] {
  --ifm-color-primary: hsl(var(--site-primary-hue-saturation) 30%);
  --ifm-color-primary-dark: hsl(var(--site-primary-hue-saturation) 26%);
  --ifm-color-primary-darker: hsl(var(--site-primary-hue-saturation) 23%);
  --ifm-color-primary-darkest: hsl(var(--site-primary-hue-saturation) 17%);

  --ifm-color-primary-light: hsl(var(--site-primary-hue-saturation-light) 39%);
  --ifm-color-primary-lighter: hsl(
    var(--site-primary-hue-saturation-light) 47%
  );
  --ifm-color-primary-lightest: hsl(
    var(--site-primary-hue-saturation-light) 58%
  );
}

/*
 * This selector will be dynamically replaced by the color generator. Don't put
 * other properties here.
 */
[data-theme='dark'] {
  --ifm-color-primary: hsl(var(--site-primary-hue-saturation) 45%);
  --ifm-color-primary-dark: hsl(var(--site-primary-hue-saturation) 41%);
  --ifm-color-primary-darker: hsl(var(--site-primary-hue-saturation) 38%);
  --ifm-color-primary-darkest: hsl(var(--site-primary-hue-saturation) 32%);

  --ifm-color-primary-light: hsl(var(--site-primary-hue-saturation-light) 54%);
  --ifm-color-primary-lighter: hsl(
    var(--site-primary-hue-saturation-light) 62%
  );
  --ifm-color-primary-lightest: hsl(
    var(--site-primary-hue-saturation-light) 73%
  );
}

.navbar__logo img {
  width: 192px;
  height: 40px;
}

/* Mobile */
@media only screen and (max-device-width: 812px) {
  .navbar__brand {
    margin: 0 auto;
  }
  .navbar-sidebar .navbar__brand {
    margin: 0;
  }
}

/* Docusaurus tablet break */
@media (max-width: 996px) {
  .navbar__logo img {
    width: 154px;
    height: 32px;
  }
}

.navbar__items {
  font-size: 12px;
  text-transform: uppercase;
}

.navbar__item {
  margin: 0 var(--ifm-navbar-item-padding-horizontal);
  padding: var(--ifm-navbar-item-padding-vertical) 0;
}

.navbar__link {
  font-weight: 700;
}

.navbar__link--active {
  border-bottom: 2px solid var(--ifm-navbar-link-hover-color);
}

.navbar__link:hover {
  opacity: 0.6;
}

.footer {
  --ifm-footer-background-color: #121212;
}

.footer__col:first-child {
  flex-grow: 3;
}

.footer__col:first-child::before {
  content: '';
  margin-left: 10px;
  width: 48px;
  height: 40px;
  display: flex;
  background: url(/img/PlayTorch_Symbol_N.svg) no-repeat;
}

.footer__col:first-child .footer__title {
  visibility: hidden;
}

.footer__title {
  font-size: 12px;
  text-transform: uppercase;
}

.footer__link-item {
  font-size: 13px;
  line-height: 2.5;
}

.footer__bottom {
  border-top: 1px solid #383838;
  margin-top: 80px;
}

.footer__logo {
  float: left;
  width: 147px;
}

.footer__copyright {
  float: right;
  font-size: 12px;
  margin-top: 0.8rem;
}

/* Mobile */
@media only screen and (max-device-width: 812px) {
  .footer__col {
    margin-bottom: 10px;
  }

  .footer__bottom {
    margin-top: 20px;
  }

  .footer__logo {
    margin-left: -10px;
  }

  .footer__copyright {
    float: left;
  }
}

.unique-tabs .tabs__item {
  line-height: 16px;
  margin-right: 8px;
}

.unique-tabs .tabs__item--active {
  border: 0;
  color: #fff;
  border-radius: var(--ifm-global-radius);
  background-color: var(--ifm-tabs-color-active);
}

[data-theme='light'] .themedDocusaurus [fill='#FFFF50'] {
  fill: greenyellow;
}

[data-theme='dark'] .themedDocusaurus [fill='#FFFF50'] {
  fill: seagreen;
}

[data-theme='light'] .DocSearch {
  /* --docsearch-primary-color: var(--ifm-color-primary); */
  /* --docsearch-text-color: var(--ifm-font-color-base); */
  --docsearch-muted-color: var(--ifm-color-emphasis-700);
  --docsearch-container-background: rgb(94 100 112 / 70%);
  /* Modal */
  --docsearch-modal-background: var(--ifm-color-secondary-lighter);
  /* Search box */
  --docsearch-searchbox-background: var(--ifm-color-secondary);
  --docsearch-searchbox-focus-background: var(--ifm-color-white);
  /* Hit */
  --docsearch-hit-color: var(--ifm-font-color-base);
  --docsearch-hit-active-color: var(--ifm-color-white);
  --docsearch-hit-background: var(--ifm-color-white);
  /* Footer */
  --docsearch-footer-background: var(--ifm-color-white);
}

[data-theme='dark'] .DocSearch {
  --docsearch-text-color: var(--ifm-font-color-base);
  --docsearch-muted-color: var(--ifm-color-secondary-darkest);
  --docsearch-container-background: rgb(47 55 69 / 70%);
  /* Modal */
  --docsearch-modal-background: var(--ifm-background-color);
  /* Search box */
  --docsearch-searchbox-background: var(--ifm-background-color);
  --docsearch-searchbox-focus-background: var(--ifm-color-black);
  /* Hit */
  --docsearch-hit-color: var(--ifm-font-color-base);
  --docsearch-hit-active-color: var(--ifm-color-white);
  --docsearch-hit-background: var(--ifm-color-emphasis-100);
  /* Footer */
  --docsearch-footer-background: var(--ifm-background-surface-color);
  --docsearch-key-gradient: linear-gradient(
    -26.5deg,
    var(--ifm-color-emphasis-200) 0%,
    var(--ifm-color-emphasis-100) 100%
  );
}

html .DocSearch-Button {
  background: transparent;
}

html .DocSearch-Button:active,
html .DocSearch-Button:focus,
html .DocSearch-Button:hover {
  background: transparent;
  box-shadow: none;
  opacity: 0.6;
}

html .DocSearch-Button-Keys,
html .DocSearch-Button-Placeholder {
  display: none;
}

div[class^='announcementBar_'] {
  --site-announcement-bar-stripe-color1: hsl(
    var(--site-primary-hue-saturation) 85%
  );
  --site-announcement-bar-stripe-color2: hsl(
    var(--site-primary-hue-saturation) 95%
  );
  background: repeating-linear-gradient(
    35deg,
    var(--site-announcement-bar-stripe-color1),
    var(--site-announcement-bar-stripe-color1) 20px,
    var(--site-announcement-bar-stripe-color2) 10px,
    var(--site-announcement-bar-stripe-color2) 40px
  );
  font-weight: bold;
}

.screen-reader-only {
  border: 0;
  clip: rect(0 0 0 0);
  clip-path: polygon(0 0, 0 0, 0 0);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px;
  white-space: nowrap;
}

[data-theme='light'] img[src$='#gh-dark-mode-only'],
[data-theme='dark'] img[src$='#gh-light-mode-only'] {
  display: none;
}

/* Used to test CSS insertion order */
.test-marker-site-custom-css-unique-rule {
  content: 'site-custom-css-unique-rule';
}

.video-container {
  position: relative;
  overflow: hidden;
  width: 100%;
  max-width: 560px;
  margin: 0 auto;
}

.yt-lite > .lty-playbtn {
  cursor: pointer;
  border: 0;
}

.dropdown__menu {
  top: calc(100% - var(--ifm-navbar-item-padding-vertical) + 0.1rem);
}

.dropdown-separator {
  margin: 0.3rem 0;
}

.dropdown-archived-versions {
  font-size: 0.875rem;
  padding: 0.2rem 0.5rem;
}

.code-block-error-line {
  background-color: #ff000020;
  display: block;
  margin: 0 calc(-1 * var(--ifm-pre-padding));
  padding: 0 var(--ifm-pre-padding);
  border-left: 3px solid #ff000080;
}

/*
 * Transparent navbar on the landing page and community page.
 */
 .plugin-pages:not([class~='mdx-page']) {
  --ifm-navbar-background-color: transparent;
  --ifm-navbar-shadow: none;
  --ifm-navbar-link-color: #fff;
  --ifm-navbar-link-hover-color: #fff;
}

.plugin-pages:not([class~='mdx-page']) .navbar {
  background: linear-gradient(180deg, rgba(0,0,0,.35), rgba(0,0,0,.2) 20%, rgba(0,0,0,.1) 50%, rgba(0,0,0,0) 100%);
  /*
   * This is so the .navbar's position:sticky works with the gradient
   * background. The margin here works together with padding on main-wrapper.
   */
  margin-top: calc(-1 * var(--ifm-navbar-height));
}

.plugin-pages:not([class~='mdx-page']) .main-wrapper {
  padding-top: 2rem;
}

.plugin-pages:not([class~='mdx-page']) .navbar__toggle {
  color: #fff;
}

.plugin-pages:not([class~='mdx-page']) .navbar__logo img {
  content: url(/img/PlayTorch_Logo_N.svg);
}

.plugin-pages:not([class~='mdx-page']) .navbar-sidebar .navbar__logo img {
  content: url(/img/PlayTorch_Logo_P.svg);
}

.plugin-pages:not([class~='mdx-page']) .DocSearch-Button .DocSearch-Search-Icon {
  color: #fff;
}

.plugin-pages:not([class~='mdx-page']) .navbar:not([class~='navbar-sidebar--show']) .header-github-link::before {
  background: url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill='white' d='M12 .297c-6.63 0-12 5.373-12 12 0 5.303 3.438 9.8 8.205 11.385.6.113.82-.258.82-.577 0-.285-.01-1.04-.015-2.04-3.338.724-4.042-1.61-4.042-1.61C4.422 18.07 3.633 17.7 3.633 17.7c-1.087-.744.084-.729.084-.729 1.205.084 1.838 1.236 1.838 1.236 1.07 1.835 2.809 1.305 3.495.998.108-.776.417-1.305.76-1.605-2.665-.3-5.466-1.332-5.466-5.93 0-1.31.465-2.38 1.235-3.22-.135-.303-.54-1.523.105-3.176 0 0 1.005-.322 3.3 1.23.96-.267 1.98-.399 3-.405 1.02.006 2.04.138 3 .405 2.28-1.552 3.285-1.23 3.285-1.23.645 1.653.24 2.873.12 3.176.765.84 1.23 1.91 1.23 3.22 0 4.61-2.805 5.625-5.475 5.92.42.36.81 1.096.81 2.22 0 1.606-.015 2.896-.015 3.286 0 .315.21.69.825.57C20.565 22.092 24 17.592 24 12.297c0-6.627-5.373-12-12-12'/%3E%3C/svg%3E")
    no-repeat;
}

/* Background gradient on landing page and community page */
.main-wrapper.gradient-background {
  background:
  radial-gradient(45% 28.91% at 100.69% 5.32%, #6200ea 0%, rgba(98, 0, 234, 0) 100%),
  radial-gradient(100% 211.59% at 100% 0%, #812ce5 0%, rgba(129, 44, 229, 0.5) 46.24%, rgba(129, 44, 229, 0) 100%),
  radial-gradient(127.5% 73.92% at 1.11% 3.05%, #050006 0%, rgba(35, 1, 75, 0) 100%),
  radial-gradient(169.1% 319.45% at 6.25% 78.21%, #6200ea 0%, rgba(98, 0, 234, 0.5) 55.5%, rgba(98, 0, 234, 0) 100%),
  radial-gradient(100% 419% at 100% 100%, #e93b43 0%, rgba(244, 30, 39, 0.25) 55.5%, rgba(255, 0, 12, 0) 100%);
}
